home *** CD-ROM | disk | FTP | other *** search
- ----------------
- Q V E D I T v1.0
- ----------------
- 0. Grovel
-
- QVEDIT is SHAREWARE. If you like it, and intend to use it, then dig deeply
- into your pockets and send a tenner+ to me (address at the end). This will
- give you the privelege of being a registered user, and you will recieve the
- upgrade as soon as it's ready. If you'd like to be a tester, please let me
- know, and any feedback on V1.0 would be good as well. QVEDIT is (C) 1992
- Julian Gold.
-
- 1. Introduction.
-
- Well, I hear you ask, just what is QVEDIT when it's at home in front of
- the fire warming its little toes? The simple answer is, that it's a patch
- editor for the Alesis QuadraVerb Plus digital effects processor. If you
- are still none-the-wiser, then perhaps this software isn't for you (but
- by all means have a play!). However, if you're still with me, then good.
- This little baby, weighing a mere 155K, will take all those programming
- nightmares away when you want to write a patch for the QuadraVerb. Instead
- of straining eyes/back/fingers prodding away at buttons with an LCD screen
- with a view, you can now strain your eyes/back/fingers clicking away at
- Ami instead. It's a whole new dimension of physico-mental suffering. But
- seriously, writing patches for modern-day synths is no joke unless you
- have a patch editor (or you're kinky about weeny LCD displays). QVEDIT
- will allow you to:
-
- o See ALL the relevant parameters at once without having to flick up
- and down pages.
-
- o Edit all the important parameters in a consistent and (relatively!)
- user-friendly way. The changes you make can either be sent in (nearly)
- real time, or in one go.
-
- o Send, recieve, save and load whole data dumps or individual patches
- from the QuadraVerb.
-
- o Locate patches with particular properties.
-
- o Test the current patch with a sound form either the Amiga or a MIDI
- source.
-
- o Produce hardcopy of all or some parameters.
-
- Interested? Read on...
-
- 2. Getting Started
-
- In order to use QVEDIT to it's full, I recommend the following set-up:
-
- o An Amiga running Workbench 1.3 or 2.0x. I've no idea how it will react
- to 1.2 ROM's, most probably unfavourably. As for the beige one, I think
- it should run on all models, though the A1000 is another question. I
- would recommend 1 Meg of RAM minimum, the program requires a few large
- arrays to hold your precious data.
-
- o A MIDI interface of some description, any will do, but I like the ones
- with flashing lights that let you see data transfers. So, connect your
- MIDI cables (we need both in and out) up, and go to Old Kent Road...
-
- o An Alesis QuadraVerb Plus. I don't know what will happen if you try to
- use QVEDIT on a vanilla QuadraVerb or (more ambiguously) a QuadraVerb
- GT. I suspect some of it will still function rather normally. If you
- would be interested in a version for the GT, then write to me and ask
- nicely. I may well entertain that concept. If you have none of these
- bits of hardware, you can still use QVEDIT, though I would describe the
- potential for doing anything useful with that setup as limited.
-
- Good, now with that hardware checklist out of the road, here's the
- software you'll need:
-
- o MIDI.library V1.0. Yes, I know there are later versions, but QVEDIT
- was designed using V1.0 because my other patch editors choked on
- later versions. MIDI.library is (C) Pregnant Badger Software. Stuff
- this into your LIBS: directory.
-
- o ASSIGN the logical (yeek! VMS-talk) QV: to the directory you've put
- QVEDIT in. Otherwise, Workbench won't know what to do when you start
- QVEDIT from a dump icon. Oh, I apologize for the gratuitous use of the
- word "dump" throughout the software and documentation. It bears no
- relation to a natural function of most creatures, but is a MIDI term
- that has few synonyms. Anyway, put your ASSIGN in your startup-sequence
- (WB 1.3) or user-startup (WB2.0x) for keeps.
-
- That's about it. QVEDIT uses a startup file called qv.config, but it will
- use default values if this can't be found, and anyway, at this point in
- the software's history, it contains only a few less-than-vital pieces of
- information such as screen colours. In the next release of QVEDIT (a few
- months hence-it will probably contain a lot of information pertaining to
- an upgraded test window, edit window positions and the like). Anyhow,
- relax, the startup file will be automatically created when you quit. You
- can have as many of them as you wish and load them at any time using the
- Misc menu, but that's just icing on the cake right now.
-
- 3. Running and using QVEDIT.
-
- Choose your weapons, Workbench or CLI.
-
- 3.1 Workbench
-
- From Workbench, you can run it either by double-clicking on the QVEDIT
- icon, or on a *DUMP* file icon (note emphasis!) stored somewhere. Patch
- file icons can be used to start QVEDIT, but they won't be loaded. You can
- also use the extended-select method: click on a dump file icon, hold down
- SHIFT, double-click the QVEDIT icon.
- If you chose to (try) to load a dump file, then QVEDIT will do its best to
- do so. Dump and patch files are written with ID headers to make sure you
- don't load any old rubbish, so if QVEDIT loads, thinks about it, then
- quits, chances are you've got a corrupt or non-existent dump file. If in
- doubt, there is an example dump file called qv.dump in the archive.
- If you just double-clicked on the QVEDIT icon, you'll get a window telling
- you a lot of tosh about QVEDIT and my good self. Click on my name for more
- hot air. There are two big buttons down the bottom of the window which
- allow you to opt for either loading a file from DOS or sucking the data
- from your QuadraVerb. You must do one or the other, if either fails you
- will be returned to where you started. The LOAD FILE option brings up a
- file requester which should be sort of familiar. Click in the DIRECTORY
- string gadget and press RETURN to get a listing of all files that match
- the current pattern. You get the idea...
- If you chose to get a dump from the QuadraVerb, you will be prompted to
- select the MIDI channel that it recieves on. (This is so that the Real-time
- edit option sends program change messages on the correct channel!). This
- channel is saved in the startup file. Use the up or down arrows to increase
- or decrease the channel (you can't type a number in because, due to a
- feature of Intuition, string gadgets trash other imagery. Click on OK, and
- the program will try to suck data from the QuadraVerb.If the program can't
- locate the QuadraVerb after you asked for a dump, you'll get a requester
- that allows you to either exit or retry again. Check your wiring if this
- happens! Finally, should you wish to abort the dump, hit 'C'.
-
- {ASIDE:
- In fact I used Peter da Silva's STDFILE requester,or at least is 99.9% his
- - I had to modify it in places to compile under Lattice (some of the bugs
- made me wonder how it, V2.0, ever compiled at all). I avoided using
- Commodore's asl.library requester for two reasons:
- (1) Not everyone has a 2.0x machine with asl.library.
- (2) I don't have a smegging clue how to call it.
- Future versions may utilise it if available and the new Libraries
- documentation surface.
- I also avoided using the arp.library requester because I lost a header
- file and found STDFILE before I could find that. STDFILE is (C) Peter da
- Silva.}
-
- 3.2 CLI usage.
-
- Staring at the CLI prompt, if you type qvedit -h then you should get a
- list of the options:
-
- qvedit -l <dumpfile> to load a dumpfile at startup.
- qvedit -d to get a dump from the QuadraVerb
- qvedit -h to remind you of the above.
-
- qvedit on its own will start with the big "About" window mentioned above.
-
- 3.3 Onwards...
-
- OK, by this point a dump file should have found its way into RAM by hook
- or by crook. You should see a cute little requester-like window with a
- scroll bar and a few gadgets. This is the PATCH SELECT window. You can
- scroll up and down using the slider to see the names of all 100 patches.
- Double-clicking a patch will select that patch to be the current one;
- otherwise a single click on the patch followed by either <RETURN> or a
- click on the OK gadget on the bottom right will do similarly. The two
- arrow gadgets under the slider move you up and down the list by 1. Other
- useful keys are:
-
- T - move the the top of the list (ie patch 99)
- B - move to the bottom of the list (ie patch 00)
- M - move to the middle of the list (patch 50)
- 0 to 9 - move to patch starting with that digit.
-
- Clicking on the close gadget returns you to the current patch which
- defaults to 0.
-
- Now the main window opens. It looks superficially like a QuadraVerb but
- isn't meant to replicate the functions exactly. The current patch name
- appears in the backdrop window, top left; along from that is the program's
- current status; and along from that the configuration of the current
- patch.
-
- IMPORTANT: all the menus and keypress options are linked to this window.
- In order for these to function THIS WINDOW MUST BE ACTIVE. No, it is not
- a bug, though I think "feature" suits the occasion.
-
- Each of the QuadraVerb's edit pages can be displayed as windows,
- so you can view all your reverb parameters (say) at once. There are
- various ways to obtain these edit windows:
-
- (1) Type a letter:
- r for reverb
- d for delay
- p for pitch
- e for EQ
- m for mix
- o for mod.
-
- (2) Menu: go to the edit menu, and select an item. If an item is ghosted,
- it isn't available in that configuration. You'll also see a command
- sequence to obtain the same effect.
-
- (3) Click on a button in the main panel window.
-
- If the page does not appear in the current configuration, nothing will
- happen. If it does, and the window is not open, then it will be opened
- (surprise!). If it is open, then it will be pushed to the front. The
- windows can be opened, closed and depth-sorted at will. Note that
- when you change program, all the function windows are closed. Don't worry,
- no changes will be lost. A dot after the name shows that patch has been
- modified.
-
- 3.4 Program Selection.
-
- There are several ways to access any of the 100 patches as well. The Patch
- Selector window can be brought up at any time by menu, Right Amiga-E, or
- clicking the PROG button on the edit panel. Clicking on the two white
- arrows move up or down to the next/previous patch - this is replicated by
- the up and down arrow keys, with the additional twist that holding down
- shift when you press the key moves you up or down in jumps of 10. Typing
- a numeral moves you to the patch starting with that digit (so 3 selects
- patch 30). T and B move you to the top or bottom of the list.
-
- 3.5 Editing values.
-
- To edit a value, click on it! An edit window will pop up, with a slider
- and two arrow keys, and a display showing the current value. Despite its
- appearance, this is not a string gadget, software to parse every possible
- parameter value would take a good few K more, and I don't want the code
- to grow excessively. Instead, use the gadgets as makes sense: the slider
- to make large changes, the arrows small changes - a quick click changes by
- 1 unit, click and hold will scroll up or down after a short pause. When
- satisfied, click on OK or select CANCEL to abort that edit. If you click
- OK and the value has changed, ALL open edit windows will be refreshed
- (because some parameters affect other windows). Note that edit requests
- are queued up, so if you click on another parameter after the edit window
- appears, it will be edited AFTER the current edit. It's probably bad news
- to deliberately do this, Intuition might not like it if RAM is in short
- supply.
- There are 2 parameters handled differently to the majority - Name and
- Configuration. A patch name is changed by activating the string gadget
- with the program name on it on the control panel (either by clicking or
- choosing NAME from the EDIT menu). To change the current patch
- configuration, you must use the CONFIG >> sub-menu on the EDIT menu. The
- current configuration is ticked. If you change this, all the edit windows
- will close.
-
- 4. Menus
-
- Many of QVEDIT's functions can be replicated by hotkeys. However, there
- are several commands deliberately left without command sequences because
- they involve pretty heavy changes to your edited data or the Quad itself
- (or it's a trivial-ish function like change the screen colours). Anyhow,
- here's a guide to the options available on Menu.
-
- 4.1 Project
-
- From here, you can load or save both whole data dumps or individual
- patches (later versions of QVEDIT will allow you to save blocks of
- patches). The SAVE <?> AS... options will pop up a friendly file
- requester, the SAVE option will only work if you've already saved a dump.
- The LOAD/SAVE PATCH functions relate to the CURRENT patch.
- The ABOUT entry gives you the good old blurb window, click OK to get rid
- of it. QUIT - I'll leave you to figure that out :-) One point to bear in
- mind - the QuadraVerb transmits its data in a special packed format which
- QVEDIT decodes. It is the PACKED data that is saved as a DUMP, but
- patches are stored as UNPACKED data.
-
- 4.2 Midi
-
- This menu controls information coming from and going to your black beauty
- (it's OK, you don't need a horse...).
-
- GET DUMP & PUT DUMP will receive/send a whole data dump (100 patches)
- from/to the QuadraVerb. These are heavy options, and so an Are You Sure
- requester pops up before they execute. WARNING! You can inadvertantly
- destroy all your QuadraVerb patches with PUT DUMP. I take no
- responsibility for this happening, you're the one holding the mouse...
- A dump takes about 5 or 6 seconds on my machine. During this time, your
- machine will "lock up" - don't worry, this is because the midi.library
- routines run at a higher priority than the input.device. Normal service
- is resumed as soon as the dump has taken place.
-
- GET/PUT PATCH pops up a little requester. The requester has several
- gadgets which allow you to select the source and destination patches.
- You can click on the number and type in your own digits, or use the
- cluster of up/down arrows to change up or down by 1. Once happy (or
- not), click OK (or CANCEL). Transfer is pretty quick.
-
- REAL-TIME EDIT allows you to change parameters on the QuadraVerb when
- you accept them in the program. Hence, clicking on OK will send the
- new value straight to the effects unit. Be careful with this option. In
- order for you to be aware of its presence, "MIDI Editing" will appear
- in the title bar status display. To turn it off, select it again.
-
- 4.3 Edit
-
- This gives menu/hotkey access to the edit windows, the patch requester
- and the ability to change the configuration of the current patch. There's
- also a CLEAR option which closes all the open edit windows.
-
- 4.4 Misc
-
- This really is a miscellany of functions! First up is the (for now)
- trivial LOAD PREFS... which brings up the inevitable file requester.
- Handy if you get sick of the colours half-way through an edit :-)
-
- Next we have COLOURS... the (almost as) familiar colour editor. Play
- about as you please, the colours I chose were motivated by my nice
- 8-colour Workbench and the QuadraVerb itself.
-
- Rather more of use is the TEST... requester. With this, you can send an
- audio signal to the QuadraVerb either from the Amiga itself or from a MIDI
- instrument appropriately connected. (Note: in V1.0, it isn't easy to
- change a sound by real-time edit and hear the difference immediately.
- The next release will cure this). Click on the LED-thingys to select the
- various options, select a MIDI channel (string gadget or arrows) or a
- sine/square wave from Ami (click on AMIGA and then on SINE or SQUARE).
- A small icon on the right shows you what the sound source is to resolve
- ambiguity. To hear a noise,click and hold the big green ball in the centre.
- The sound stops on release. To change the note, type in a note in the
- gadget left of the slider, or use the slider to change to a note in the
- 3-octave range. Finally, click on OK to get rid of the window.
-
- Also jolly useful is the FIND... option. Up pops a requester which allows
- you to find a particular type of patch. Click on an LED to select the
- appropriate target and then click FIND to find the first one, or FIND
- NEXT to er, find the next one, or CANCEL to forget it completely. There's
- also a NAME PATTERN MATCHING option. To use this, click on the LED (it
- won't work unless you do this!) then type the pattern. The pattern uses
- AmigaDOS wildcards, ie #? to match anything, ? to match a single
- character, | to do a this OR that match, % for no string at all,etc. Now
- PRESS <RETURN>. Failure to do so will cause failure of the find, because
- the pattern must be pre-processed on <RETURN>. In essence, nothing will
- happen till you re-select the pattern and hit <RETURN>!
-
- Last but not least is PRINT. Selecting this will gave you a printout of
- the parameters in the OPEN edit windows: none open, no data except a name.
- Of course, this presumes you have a printer!
-
- 5. Problems and Shortcomings.
-
- No program is without problems, QVEDIT is no exception. Here's a list of
- some things to watch out for (and if you have an idea what's happening
- please let me know!).
-
- o The "double dump" problem. Sometimes you have to GET DUMP twice before
- anything changes within QVEDIT. Probably due to some MIDI snag-up
- because the Amiga's serial port is being pushed quite hard to accept
- the large (14K+) volume of data from a dump.
-
- o The "spurious data value" problem. If you change (say) delay mode from
- mono to stereo, you can get bizarre values for the delay time. I can't
- say I'm pleased with this bug, it should be easy to crack but isn't.
- However, it IS easy to remedy : just edit the right value in!
-
- o The "lost bytes" problem. RAM creep of an unusual nature, it happens
- only the first time the program is loaded. 512 bytes vanish. Odd number,
- huh? After that things seem fine. I'm pretty sure I've closed all the
- crap I opened, and have free()'d all I've malloc()'d so perhaps the
- problem's elsewhere? Or maybe it's a fragmentation thing? Ideas on a
- postcard...
-
- These are the only ones I can recall as persisting. Because the QV has so
- many possible combinations of functions and modes, it is impossible to
- test them all in a finite lifetime. So if you see strange values for
- parameters (especially in connection with ducks), please let me know. And
- of course, any other bugs, or anything you'd like to see implemented
- that's not, or is but could be better...
-
- It's been mostly fun writing QVEDIT. I've been hampered by a number of
- grotesque inaccuracies in the QuadraVerb MIDI implementation document I
- obtained (if you're interested, I can send you a copy with the correct
- stuff on it), and it's been nearly 8 weeks of nearly solid coding. It's
- been a learning experience, etc. I will be having a break for a few weeks,
- then getting back down to writing the next upgrade. It's tough at the
- top...
-
- Well, that's about it. All I can say is "happy editing", and I look
- forward to receiving some dosh and feedback :-)
-
- Julian Gold,
- c/o 29 High Street, Chesterton,
- Cambridge,
- UK.
-